package part1.api.file.mytest;

import java.io.File;
import java.io.FileFilter;
import java.io.IOException;

public class FileDemo {
    public static void main(String[] args) {
        File file = new File("./a.txt");
        System.out.println("文件名:"+file.getName());
        System.out.println("文件大小"+file.length());
        System.out.println("文件是否隐藏"+file.isHidden());
        System.out.println("文件是否可读"+file.canRead());
        System.out.println("文件是否可写"+file.canWrite());
        System.out.println("文件是否存在"+file.exists());
        try {
            file.createNewFile();//创建文件，创建的文件要保证当前目录存在

        } catch (IOException e) {
            e.printStackTrace();
        }

        if (!file.exists()){
            file.mkdirs(); //创建目录，连上级目录一起创建
        }
        boolean a = file.isFile(); //是否是文件
        boolean b = file.isDirectory(); //是否是目录
        file.delete(); //删除目录时只能删除空目录

        File[] files = file.listFiles(new FileFilter() {  //获取当前目录的子集合
            @Override
            public boolean accept(File pathname) {
                return pathname.getName().contains("s");
            }
        });

        File[] file1 = file.listFiles(fileName -> fileName.getName().contains("s")); //lambda表达式写法
    }
}
